package gui;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JComboBox;
import javax.swing.JPanel;

import weerapp.meet.Meetgegevens;
import weerapp.meet.Waarneming;


@SuppressWarnings("serial")
public class GrafiekBox extends JPanel
{
	private JComboBox jaarBox;
	private JComboBox maandBox;
	private Meetgegevens gegevens;
	private ActionListener listener;
	private GrafiekView grafiekView;
	private String name;
	
	public GrafiekBox(Meetgegevens gegevens, GrafiekView panel)
	{
		grafiekView = panel;
		listener = new ClickListener();
		this.gegevens = gegevens;		
		init();
		this.setSize(150, 50);
	}
	
	
	public void init()
	{		
		 jaarBox = new JComboBox();
		 maandBox = new JComboBox();
		 Waarneming eerste = gegevens.getEersteWaarneming();
		 Waarneming laaste = gegevens.getLaatsteWaarneming();
		 
		 int eersteJaar = eerste.getJaar();
		 int laasteJaar = laaste.getJaar();
		 
		 for(int x = eersteJaar; x <= laasteJaar; x++){
			 jaarBox.addItem(Integer.toString(x));
		 }
		 
		 maandBox.addItem("Januari");
		 maandBox.addItem("Februari");
		 maandBox.addItem("Maart");
		 maandBox.addItem("April");
		 maandBox.addItem("Mei");
		 maandBox.addItem("Juni");
		 maandBox.addItem("Juli");
		 maandBox.addItem("Augustus");
		 maandBox.addItem("September");
		 maandBox.addItem("Oktober");
		 maandBox.addItem("November");
		 maandBox.addItem("December");
		 
		 jaarBox.addActionListener(listener);
		 maandBox.addActionListener(listener);
		
		 add(jaarBox);
		 add(maandBox);
	}
	
	public String getName(){
		return name;
	}
	
	private class ClickListener implements ActionListener{

		public void actionPerformed(ActionEvent e)
		{
			JComboBox sender = (JComboBox)e.getSource();
			String item = (String)sender.getSelectedItem();
			String maand = "";
			String jaar = "";
			if(sender.equals(jaarBox)){
				jaar = item;
				maand = (String)maandBox.getSelectedItem();				
			}else if(sender.equals(maandBox)){
				maand = item;
				jaar = (String)jaarBox.getSelectedItem();
			}
			name = "";
			name += maand;
			name += jaar;
			grafiekView.loadWaarnemingen(jaar, maand);
		}
		
	}
}
